package com.project.service;

import com.project.bean.UserBean;

import java.util.List;

/**
 * 用户业务接口
 */
public interface IUserService {
    /**
     * 用户登录
     * @param userName 用户名
     * @param pwd 密码
     * @return 用户对象，如果登录失败，返回null
     */
    public UserBean login(String userName,String pwd);
    /**
     * 添加用户
     * 验证用户名是否存在，如果存在返回false。
     * 如果不存在，完成用户添加，返回true
     * @param user 用户对象
     * @return
     */
    public boolean addUser(UserBean user);
    /**
     * 检测用户名是否存在
     * @param userName 用户名
     * @return 用户名是否存在
     */
//    public boolean checkName(String userName);


    /**
     * 按用户编号查询用户
     * @param userId
     * @return 用户对象
     */
    public UserBean findById(Integer userId);

    /**
     * 查询所有用户
     * @return 用户集合
     */
    public List<UserBean> findAll();



    /**
     * 根据用户ID修改用户密码
     * @param userId 用户编号
     * @param newPwd 新密码
     */
    public boolean updatePwd(String oldPwd,Integer userId,String newPwd);

    /**
     * 根据用户ID修改用户等级
     * @param userId 用户密码
     */
    public void updateGrade(Integer userId,String grade);

    /**
     * 按id删除用户，如果要删除用户和登录用户同名，则返回false
     * 否则，完成删除用户，返回true
     * @param userId 用户id
     * @param loginUser 登录用户
     * @return 删除是否成功
     */
    public boolean del(Integer userId,UserBean loginUser);
}
